From 1d5ef907b279e087156e61f8f19350d9aff4ab76 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Mon, 25 Jun 2007 06:38:58 +0000 Subject: [PATCH] Revert my attempted overly simple fix for #445284, as it causes a 2007-06-25 Tor Lillqvist * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Revert my attempted overly simple fix for #445284, as it causes a regression. (For instance, in GIMP the tool cursor gets used also for the right-click menu in image windows.) A more complex fix is needed to more completely emulate X11 behaviour. svn path=/trunk/; revision=18225 --- ChangeLog | 8 ++++++++ gdk/win32/gdkevents-win32.c | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index 6ace9d2aa3..b1f2651805 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2007-06-25 Tor Lillqvist + + * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Revert my + attempted overly simple fix for #445284, as it causes a + regression. (For instance, in GIMP the tool cursor gets used also + for the right-click menu in image windows.) A more complex fix is + needed to more completely emulate X11 behaviour. + 2007-06-24 Kristian Rietveld * Makefile.am: fix little mistake in my last commit ... diff --git a/gdk/win32/gdkevents-win32.c b/gdk/win32/gdkevents-win32.c index 9364d15514..5059a88993 100644 --- a/gdk/win32/gdkevents-win32.c +++ b/gdk/win32/gdkevents-win32.c @@ -534,6 +534,8 @@ gdk_pointer_grab (GdkWindow *window, if (return_val == GDK_GRAB_SUCCESS) { + GdkWindowImplWin32 *impl = GDK_WINDOW_IMPL_WIN32 (((GdkWindowObject *) window)->impl); + if (p_grab_window != NULL && p_grab_window != window) generate_grab_broken_event (p_grab_window, FALSE, window); @@ -550,6 +552,10 @@ gdk_pointer_grab (GdkWindow *window, if (p_grab_cursor != NULL) SetCursor (p_grab_cursor); + else if (impl->hcursor != NULL) + SetCursor (impl->hcursor); + else + SetCursor (LoadCursor (NULL, IDC_ARROW)); if (confine_to != NULL) { -- 2.30.2